An MFP (multi function peripheral) includes a scanner and a printer and has a capability of reading an original and a capability of receiving data from a PC or the like and printing it. An image processing apparatus incorporated in the MFP to transfer image data to/from an input/output device such as a scanner or printer must have a capability for data processing exceeding the image data transfer rate of the input/output device. One reason for this is that the input/output device executes original reading or print processing for each page: once it starts processing, it cannot stop the operation until the entire page has been processed. If the input/output device has no page buffer which is a factor for an increase in cost, it is necessary to transfer image data of at least one page in synchronism with the operation of the device during the operation of the device. For this reason, the image processing apparatus connected to these devices must satisfy the data transfer conditions. Since the data transfer conditions change greatly depending on the operation rate of the device, the resolution of image data, the type of color space, and the like, the image processing apparatus must have a capability for data processing that satisfies all the data transfer conditions. Under these circumstances, the image processing apparatus is designed in consideration of the required maximum capability for data processing. It is therefore difficult for the image processing apparatus to have, for example, a circuit scale, manufacturing cost, and power consumption less than or equal to desired values.
There has been proposed an image processing apparatus including a plurality of image processing units capable of executing a plurality of image processes in parallel. The image processing units process identical or associated data and combine their output data to realize desired image processing (Japanese Patent Laid-Open No. 2006-67117).
In this arrangement as well, all the image processing units need to have required capabilities for data processing. Moreover, depending on the characteristics of the image processes, a different maximum capability for data processing may be independently needed for each image processing unit.
When the image processing apparatus has a plurality of operation modes, the capability for data processing necessary for each image processing unit may independently change depending on the operation mode. In this case, each image processing unit is configured to have a capability for data processing necessary for an operation mode that requires the maximum required capability for data processing. Assume that a first image processing unit must have a maximum capability for data processing in the first operation mode, and a second image processing unit must have the maximum capability for data processing in a second operation mode. In this case, each of the first and second image processing units is designed to have the maximum capability for data processing in the corresponding operation mode.
However, if each image processing unit is designed in accordance with an operation mode that requires the maximum capability for data processing, the image processing units always have excess capabilities for data processing in other operation modes. This situation is conspicuous especially when the image processing apparatus includes many image processing units, and the image processing units need maximum capabilities for data processing in different operation modes because of the difference between characteristics. The excess capability of each image processing unit in the operation mode leads to an increase in the cost and power consumption of the overall apparatus. A demand therefore exists to reduce the cost and power consumption of the overall apparatus by further optimizing the capability of each image processing unit.
To achieve this object, a data processing device such as an FPGA (Field Programmable Gate Array) whose process can be altered may be used to realize an optimum image processing capability in each operation mode. For example, the maximum capability for data processing in each operation mode may be satisfied by forming each image processing unit using an FPGA and changing the process (of the FPGA) in accordance with the operation mode. However, using the data processing device whose process can be altered increases the cost as compared to use of a data processing device with a fixed process.